<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>shark::SvmProblem&lt; Problem &gt; Class Template Reference</title>
<script type="text/javaScript" src="search/search.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3.0.1/es5/tex-mml-chtml.js"></script>
<script src="../../mlstyle.js"></script>
<link href="../css/besser.css" rel="stylesheet" type="text/css"/>
</head>
<!-- pretty cool: each body gets an id tag which is the basename of the web page  -->
<!--              and allows for page-specific CSS. this is client-side scripted, -->
<!--              so the id will not yet show up in the served source code -->
<script type="text/javascript">
    jQuery(document).ready(function () {
        var url = jQuery(location).attr('href');
        var pname = url.substr(url.lastIndexOf("/")+1, url.lastIndexOf(".")-url.lastIndexOf("/")-1);
        jQuery('#this_url').html('<strong>' + pname + '</strong>');
        jQuery('body').attr('id', pname);
    });
</script>
<body>
    <div id="shark_old">
        <div id="wrap">
            <div id="header">
                <div id="site-name"><a href="../../sphinx_pages/build/html/index.html">Shark machine learning library</a></div>
                <ul id="nav">
                    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/installation.html">Installation</a>
                    </li>
		    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/tutorials/tutorials.html">Tutorials</a>
                    </li>
		    <li >
                        <a href="../../sphinx_pages/build/html/rest_sources/benchmark.html">Benchmarks</a>
                    </li>
                    <li class="active">
                        <a href="classes.html">Documentation</a>
                        <ul>
                            <li class="first"></li>
                            <li><a href="../../sphinx_pages/build/html/rest_sources/quickref/quickref.html">Quick references</a></li>
                            <li><a href="classes.html">Class list</a></li>
                            <li class="last"><a href="group__shark__globals.html">Global functions</a></li>
                        </ul>
                    </li>
                </ul>
            </div>
        </div>
    </div>
<div id="doxywrapper">
<!--
    <div id="global_doxytitle">Doxygen<br>Documentation:</div>
-->
    <div id="navrow_wrapper">
<!-- Generated by Doxygen 1.9.8 -->
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceshark.html">shark</a></li><li class="navelem"><a class="el" href="classshark_1_1_svm_problem.html">SvmProblem</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="classshark_1_1_svm_problem-members.html">List of all members</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle"><div class="title">shark::SvmProblem&lt; Problem &gt; Class Template Reference</div></div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="_svm_problems_8h_source.html">shark/Algorithms/QP/SvmProblems.h</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for shark::SvmProblem&lt; Problem &gt;:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><img src="classshark_1_1_svm_problem__inherit__graph.png" border="0" usemap="#ashark_1_1_svm_problem_3_01_problem_01_4_inherit__map" alt="Inheritance graph"/></div>
<map name="ashark_1_1_svm_problem_3_01_problem_01_4_inherit__map" id="ashark_1_1_svm_problem_3_01_problem_01_4_inherit__map">
<area shape="rect" title=" " alt="" coords="21,5,165,46"/>
<area shape="rect" href="structshark_1_1_box_based_shrinking_strategy.html" title=" " alt="" coords="5,94,181,150"/>
<area shape="poly" title=" " alt="" coords="96,61,96,93,90,93,90,61"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a36f9963fc67abd79168cc9bcbaf98b6c" id="r_a36f9963fc67abd79168cc9bcbaf98b6c"><td class="memItemLeft" align="right" valign="top">typedef Problem::QpFloatType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a36f9963fc67abd79168cc9bcbaf98b6c">QpFloatType</a></td></tr>
<tr class="separator:a36f9963fc67abd79168cc9bcbaf98b6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e039c8a44164e2f96137119779ef344" id="r_a4e039c8a44164e2f96137119779ef344"><td class="memItemLeft" align="right" valign="top">typedef Problem::MatrixType&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a4e039c8a44164e2f96137119779ef344">MatrixType</a></td></tr>
<tr class="separator:a4e039c8a44164e2f96137119779ef344"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acef7c20b210e81a62d01e9eadd61dc49" id="r_acef7c20b210e81a62d01e9eadd61dc49"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="structshark_1_1_lib_s_v_m_selection_criterion.html">LibSVMSelectionCriterion</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#acef7c20b210e81a62d01e9eadd61dc49">PreferedSelectionStrategy</a></td></tr>
<tr class="separator:acef7c20b210e81a62d01e9eadd61dc49"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad10f8907862c01b1fc4ec5cd0ff06823" id="r_ad10f8907862c01b1fc4ec5cd0ff06823"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#ad10f8907862c01b1fc4ec5cd0ff06823">SvmProblem</a> (Problem &amp;problem)</td></tr>
<tr class="separator:ad10f8907862c01b1fc4ec5cd0ff06823"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42f4bb52a5e7c0415519da0ecf060edf" id="r_a42f4bb52a5e7c0415519da0ecf060edf"><td class="memItemLeft" align="right" valign="top">std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">dimensions</a> () const</td></tr>
<tr class="separator:a42f4bb52a5e7c0415519da0ecf060edf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e36b705c5de7db9cc1a9882753d8102" id="r_a1e36b705c5de7db9cc1a9882753d8102"><td class="memItemLeft" align="right" valign="top">std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a1e36b705c5de7db9cc1a9882753d8102">active</a> () const</td></tr>
<tr class="separator:a1e36b705c5de7db9cc1a9882753d8102"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb63064bffd6c4f4ff157a45535bb142" id="r_aeb63064bffd6c4f4ff157a45535bb142"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#aeb63064bffd6c4f4ff157a45535bb142">boxMin</a> (std::size_t i) const</td></tr>
<tr class="separator:aeb63064bffd6c4f4ff157a45535bb142"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc78269e1b3b3f0372018eb3172db25e" id="r_afc78269e1b3b3f0372018eb3172db25e"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#afc78269e1b3b3f0372018eb3172db25e">boxMax</a> (std::size_t i) const</td></tr>
<tr class="separator:afc78269e1b3b3f0372018eb3172db25e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39babf310726215d71ef6e29235342c9" id="r_a39babf310726215d71ef6e29235342c9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a39babf310726215d71ef6e29235342c9">isLowerBound</a> (std::size_t i) const</td></tr>
<tr class="separator:a39babf310726215d71ef6e29235342c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab02d8e8ba4ed8d48ba32fed34c6a1247" id="r_ab02d8e8ba4ed8d48ba32fed34c6a1247"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#ab02d8e8ba4ed8d48ba32fed34c6a1247">isUpperBound</a> (std::size_t i) const</td></tr>
<tr class="separator:ab02d8e8ba4ed8d48ba32fed34c6a1247"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac12ebec3daaab85111af6dd0561e993e" id="r_ac12ebec3daaab85111af6dd0561e993e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classshark_1_1_svm_problem.html#a4e039c8a44164e2f96137119779ef344">MatrixType</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#ac12ebec3daaab85111af6dd0561e993e">quadratic</a> ()</td></tr>
<tr class="memdesc:ac12ebec3daaab85111af6dd0561e993e"><td class="mdescLeft">&#160;</td><td class="mdescRight">representation of the quadratic part of the objective function  <br /></td></tr>
<tr class="separator:ac12ebec3daaab85111af6dd0561e993e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe5c70e6047a13481b3f3dbfbd3b7b4e" id="r_afe5c70e6047a13481b3f3dbfbd3b7b4e"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#afe5c70e6047a13481b3f3dbfbd3b7b4e">linear</a> (std::size_t i) const</td></tr>
<tr class="separator:afe5c70e6047a13481b3f3dbfbd3b7b4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97a8afab15ad38ec1fb321317f9454a1" id="r_a97a8afab15ad38ec1fb321317f9454a1"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">alpha</a> (std::size_t i) const</td></tr>
<tr class="separator:a97a8afab15ad38ec1fb321317f9454a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8f67d9116f73ddd35faf9f16d13e39f" id="r_aa8f67d9116f73ddd35faf9f16d13e39f"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#aa8f67d9116f73ddd35faf9f16d13e39f">diagonal</a> (std::size_t i) const</td></tr>
<tr class="separator:aa8f67d9116f73ddd35faf9f16d13e39f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae638f4ac4dba40b797e5f6cfd2244c77" id="r_ae638f4ac4dba40b797e5f6cfd2244c77"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#ae638f4ac4dba40b797e5f6cfd2244c77">gradient</a> (std::size_t i) const</td></tr>
<tr class="separator:ae638f4ac4dba40b797e5f6cfd2244c77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac1b3e0a3248593ed5b917940ea8625f" id="r_aac1b3e0a3248593ed5b917940ea8625f"><td class="memItemLeft" align="right" valign="top">std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#aac1b3e0a3248593ed5b917940ea8625f">permutation</a> (std::size_t i) const</td></tr>
<tr class="separator:aac1b3e0a3248593ed5b917940ea8625f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb8152953435a41f851793490341d4c3" id="r_acb8152953435a41f851793490341d4c3"><td class="memItemLeft" align="right" valign="top">RealVector&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#acb8152953435a41f851793490341d4c3">getUnpermutedAlpha</a> () const</td></tr>
<tr class="separator:acb8152953435a41f851793490341d4c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31367cdd5b8129925a6c0e70515b4e0d" id="r_a31367cdd5b8129925a6c0e70515b4e0d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">updateSMO</a> (std::size_t i, std::size_t j)</td></tr>
<tr class="memdesc:a31367cdd5b8129925a6c0e70515b4e0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Does an update of SMO given a working set with indices i and j.  <br /></td></tr>
<tr class="separator:a31367cdd5b8129925a6c0e70515b4e0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff44e8756f1ce22489ff00bdb25cb95d" id="r_aff44e8756f1ce22489ff00bdb25cb95d"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#aff44e8756f1ce22489ff00bdb25cb95d">functionValue</a> () const</td></tr>
<tr class="memdesc:aff44e8756f1ce22489ff00bdb25cb95d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current function value of the problem.  <br /></td></tr>
<tr class="separator:aff44e8756f1ce22489ff00bdb25cb95d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa98f2e4bcbd2311dd36f1c28ade75bd2" id="r_aa98f2e4bcbd2311dd36f1c28ade75bd2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#aa98f2e4bcbd2311dd36f1c28ade75bd2">shrink</a> (double)</td></tr>
<tr class="separator:aa98f2e4bcbd2311dd36f1c28ade75bd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a073a4ac3cd7dddbd840fe8b38ca2b399" id="r_a073a4ac3cd7dddbd840fe8b38ca2b399"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a073a4ac3cd7dddbd840fe8b38ca2b399">reshrink</a> ()</td></tr>
<tr class="separator:a073a4ac3cd7dddbd840fe8b38ca2b399"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1472ef03326d4e0d8a98f4a3d7e159a" id="r_ad1472ef03326d4e0d8a98f4a3d7e159a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#ad1472ef03326d4e0d8a98f4a3d7e159a">unshrink</a> ()</td></tr>
<tr class="separator:ad1472ef03326d4e0d8a98f4a3d7e159a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa19eecb264f01e1e3f8aa07640004d7b" id="r_aa19eecb264f01e1e3f8aa07640004d7b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">setInitialSolution</a> (RealVector const &amp;<a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">alpha</a>, RealVector const &amp;<a class="el" href="classshark_1_1_svm_problem.html#ae638f4ac4dba40b797e5f6cfd2244c77">gradient</a>)</td></tr>
<tr class="memdesc:aa19eecb264f01e1e3f8aa07640004d7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Define the initial solution for the iterative solver.  <br /></td></tr>
<tr class="separator:aa19eecb264f01e1e3f8aa07640004d7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a21e030b9a4e898dd8ca16f555cad4447" id="r_a21e030b9a4e898dd8ca16f555cad4447"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a21e030b9a4e898dd8ca16f555cad4447">setInitialSolution</a> (RealVector const &amp;<a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">alpha</a>)</td></tr>
<tr class="memdesc:a21e030b9a4e898dd8ca16f555cad4447"><td class="mdescLeft">&#160;</td><td class="mdescRight">Define the initial solution for the iterative solver.  <br /></td></tr>
<tr class="separator:a21e030b9a4e898dd8ca16f555cad4447"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a218c29273fd1258c287357a1b0493918" id="r_a218c29273fd1258c287357a1b0493918"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a218c29273fd1258c287357a1b0493918">deactivateVariable</a> (std::size_t i)</td></tr>
<tr class="memdesc:a218c29273fd1258c287357a1b0493918"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove the i-th example from the problem while taking the equality constraint into account.  <br /></td></tr>
<tr class="separator:a218c29273fd1258c287357a1b0493918"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0c80f38017ca75c1b2a6bc3654e0b627" id="r_a0c80f38017ca75c1b2a6bc3654e0b627"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a0c80f38017ca75c1b2a6bc3654e0b627">activateVariable</a> (std::size_t i)</td></tr>
<tr class="memdesc:a0c80f38017ca75c1b2a6bc3654e0b627"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reactivate an previously deactivated variable.  <br /></td></tr>
<tr class="separator:a0c80f38017ca75c1b2a6bc3654e0b627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2906035d35c845bde74e931a3b7b57d0" id="r_a2906035d35c845bde74e931a3b7b57d0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a2906035d35c845bde74e931a3b7b57d0">flipCoordinates</a> (std::size_t i, std::size_t j)</td></tr>
<tr class="memdesc:a2906035d35c845bde74e931a3b7b57d0"><td class="mdescLeft">&#160;</td><td class="mdescRight">exchange two variables via the permutation  <br /></td></tr>
<tr class="separator:a2906035d35c845bde74e931a3b7b57d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0390d19fab99eb4c47afd40ce22deb81" id="r_a0390d19fab99eb4c47afd40ce22deb81"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a0390d19fab99eb4c47afd40ce22deb81">scaleBoxConstraints</a> (double factor, double variableScalingFactor)</td></tr>
<tr class="memdesc:a0390d19fab99eb4c47afd40ce22deb81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Scales all box constraints by a constant factor and adapts the solution using a separate scaling.  <br /></td></tr>
<tr class="separator:a0390d19fab99eb4c47afd40ce22deb81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b1278df58fcf906b5395793f5bf1b33" id="r_a9b1278df58fcf906b5395793f5bf1b33"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a9b1278df58fcf906b5395793f5bf1b33">setLinear</a> (std::size_t i, double newValue)</td></tr>
<tr class="memdesc:a9b1278df58fcf906b5395793f5bf1b33"><td class="mdescLeft">&#160;</td><td class="mdescRight">adapts the linear part of the problem and updates the internal data structures accordingly.  <br /></td></tr>
<tr class="separator:a9b1278df58fcf906b5395793f5bf1b33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33eaf27af1bb982dcd7f965fcfbce884" id="r_a33eaf27af1bb982dcd7f965fcfbce884"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a33eaf27af1bb982dcd7f965fcfbce884">checkKKT</a> () const</td></tr>
<tr class="separator:a33eaf27af1bb982dcd7f965fcfbce884"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aca60a43765c528fb1e2e5a5acb495de8" id="r_aca60a43765c528fb1e2e5a5acb495de8"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">applyStep</a> (std::size_t i, std::size_t j, double step)</td></tr>
<tr class="memdesc:aca60a43765c528fb1e2e5a5acb495de8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update the problem by a proposed step i taking the box constraints into account.  <br /></td></tr>
<tr class="separator:aca60a43765c528fb1e2e5a5acb495de8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade0b5d8577fdb5fde149f542babc1369" id="r_ade0b5d8577fdb5fde149f542babc1369"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">updateAlphaStatus</a> (std::size_t i)</td></tr>
<tr class="separator:ade0b5d8577fdb5fde149f542babc1369"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb9d0ed983afddf9bcc3b856c8b04b02" id="r_abb9d0ed983afddf9bcc3b856c8b04b02"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#abb9d0ed983afddf9bcc3b856c8b04b02">testShrinkVariable</a> (std::size_t a, double largestUp, double smallestDown) const</td></tr>
<tr class="separator:abb9d0ed983afddf9bcc3b856c8b04b02"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:adb2ad6ad0ad2571b0985f767347223d3" id="r_adb2ad6ad0ad2571b0985f767347223d3"><td class="memItemLeft" align="right" valign="top">Problem&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">m_problem</a></td></tr>
<tr class="separator:adb2ad6ad0ad2571b0985f767347223d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe3da8520eacc5b4c5c5f1b051ad726c" id="r_abe3da8520eacc5b4c5c5f1b051ad726c"><td class="memItemLeft" align="right" valign="top">RealVector&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">m_gradient</a></td></tr>
<tr class="memdesc:abe3da8520eacc5b4c5c5f1b051ad726c"><td class="mdescLeft">&#160;</td><td class="mdescRight">gradient of the objective function at the current alpha  <br /></td></tr>
<tr class="separator:abe3da8520eacc5b4c5c5f1b051ad726c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53377e65ea2637c37acb3f7523a837fc" id="r_a53377e65ea2637c37acb3f7523a837fc"><td class="memItemLeft" align="right" valign="top">std::size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a53377e65ea2637c37acb3f7523a837fc">m_active</a></td></tr>
<tr class="separator:a53377e65ea2637c37acb3f7523a837fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37d6169989efa917c76435eb50167a7b" id="r_a37d6169989efa917c76435eb50167a7b"><td class="memItemLeft" align="right" valign="top">std::vector&lt; char &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">m_alphaStatus</a></td></tr>
<tr class="memdesc:a37d6169989efa917c76435eb50167a7b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stores the status, whther alpha is on the lower or upper bound, or whether it is free.  <br /></td></tr>
<tr class="separator:a37d6169989efa917c76435eb50167a7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><div class="compoundTemplParams">template&lt;class Problem&gt;<br />
class shark::SvmProblem&lt; Problem &gt;</div>
<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00300">300</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a4e039c8a44164e2f96137119779ef344" name="a4e039c8a44164e2f96137119779ef344"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4e039c8a44164e2f96137119779ef344">&#9670;&#160;</a></span>MatrixType</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef Problem::MatrixType <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;<a class="el" href="_mc_svm_linear_8cpp.html#a88ab98d46276376a56c2a396842cd58e">::MatrixType</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00303">303</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

</div>
</div>
<a id="acef7c20b210e81a62d01e9eadd61dc49" name="acef7c20b210e81a62d01e9eadd61dc49"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acef7c20b210e81a62d01e9eadd61dc49">&#9670;&#160;</a></span>PreferedSelectionStrategy</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="structshark_1_1_lib_s_v_m_selection_criterion.html">LibSVMSelectionCriterion</a> <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::PreferedSelectionStrategy</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00304">304</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

</div>
</div>
<a id="a36f9963fc67abd79168cc9bcbaf98b6c" name="a36f9963fc67abd79168cc9bcbaf98b6c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36f9963fc67abd79168cc9bcbaf98b6c">&#9670;&#160;</a></span>QpFloatType</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">typedef Problem::QpFloatType <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::QpFloatType</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00302">302</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="ad10f8907862c01b1fc4ec5cd0ff06823" name="ad10f8907862c01b1fc4ec5cd0ff06823"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad10f8907862c01b1fc4ec5cd0ff06823">&#9670;&#160;</a></span>SvmProblem()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::SvmProblem </td>
          <td>(</td>
          <td class="paramtype">Problem &amp;&#160;</td>
          <td class="paramname"><em>problem</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00306">306</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">shark::SvmProblem&lt; Problem &gt;::alpha()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>, <a class="el" href="classshark_1_1_svm_problem.html#ac12ebec3daaab85111af6dd0561e993e">shark::SvmProblem&lt; Problem &gt;::quadratic()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a0c80f38017ca75c1b2a6bc3654e0b627" name="a0c80f38017ca75c1b2a6bc3654e0b627"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0c80f38017ca75c1b2a6bc3654e0b627">&#9670;&#160;</a></span>activateVariable()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::activateVariable </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reactivate an previously deactivated variable. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00503">503</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02a28e0b952dcae83b045ba488526875f3c">shark::AlphaFree</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>, <a class="el" href="_exception_8h.html#a42a6a50e4d06c00d60fbca5333f40768">SIZE_CHECK</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>.</p>

</div>
</div>
<a id="a1e36b705c5de7db9cc1a9882753d8102" name="a1e36b705c5de7db9cc1a9882753d8102"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e36b705c5de7db9cc1a9882753d8102">&#9670;&#160;</a></span>active()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::size_t <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::active </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00326">326</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a53377e65ea2637c37acb3f7523a837fc">shark::SvmProblem&lt; Problem &gt;::m_active</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">shark::SvmProblem&lt; Problem &gt;::applyStep()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a33eaf27af1bb982dcd7f965fcfbce884">shark::SvmProblem&lt; Problem &gt;::checkKKT()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<a id="a97a8afab15ad38ec1fb321317f9454a1" name="a97a8afab15ad38ec1fb321317f9454a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a97a8afab15ad38ec1fb321317f9454a1">&#9670;&#160;</a></span>alpha()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::alpha </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00352">352</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#afc78269e1b3b3f0372018eb3172db25e">shark::SvmProblem&lt; Problem &gt;::boxMax()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aeb63064bffd6c4f4ff157a45535bb142">shark::SvmProblem&lt; Problem &gt;::boxMin()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a218c29273fd1258c287357a1b0493918">shark::SvmProblem&lt; Problem &gt;::deactivateVariable()</a>, <a class="el" href="classshark_1_1_svm_problem.html#acb8152953435a41f851793490341d4c3">shark::SvmProblem&lt; Problem &gt;::getUnpermutedAlpha()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a21e030b9a4e898dd8ca16f555cad4447">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ad10f8907862c01b1fc4ec5cd0ff06823">shark::SvmProblem&lt; Problem &gt;::SvmProblem()</a>.</p>

</div>
</div>
<a id="aca60a43765c528fb1e2e5a5acb495de8" name="aca60a43765c528fb1e2e5a5acb495de8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca60a43765c528fb1e2e5a5acb495de8">&#9670;&#160;</a></span>applyStep()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::applyStep </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>j</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>step</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Update the problem by a proposed step i taking the box constraints into account. </p>
<p>A step length 0&lt;=lambda&lt;=1 is found so that boxMin(i) &lt;= alpha(i)+lambda*step &lt;= boxMax(i) and boxMin(j) &lt;= alpha(j)-lambda*step &lt;= boxMax(j) the update is performed in a numerically stable way and the internal data structures are also updated. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00572">572</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a1e36b705c5de7db9cc1a9882753d8102">shark::SvmProblem&lt; Problem &gt;::active()</a>, <a class="el" href="classshark_1_1_svm_problem.html#afc78269e1b3b3f0372018eb3172db25e">shark::SvmProblem&lt; Problem &gt;::boxMax()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aeb63064bffd6c4f4ff157a45535bb142">shark::SvmProblem&lt; Problem &gt;::boxMin()</a>, <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>, <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>, <a class="el" href="classshark_1_1_svm_problem.html#ac12ebec3daaab85111af6dd0561e993e">shark::SvmProblem&lt; Problem &gt;::quadratic()</a>, <a class="el" href="_exception_8h.html#a42a6a50e4d06c00d60fbca5333f40768">SIZE_CHECK</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a218c29273fd1258c287357a1b0493918">shark::SvmProblem&lt; Problem &gt;::deactivateVariable()</a>.</p>

</div>
</div>
<a id="afc78269e1b3b3f0372018eb3172db25e" name="afc78269e1b3b3f0372018eb3172db25e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc78269e1b3b3f0372018eb3172db25e">&#9670;&#160;</a></span>boxMax()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::boxMax </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00333">333</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">shark::SvmProblem&lt; Problem &gt;::alpha()</a>, <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02a58dcbef75d88f882ee2072dbc57c6fad">shark::AlphaDeactivated</a>, <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>, and <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">shark::SvmProblem&lt; Problem &gt;::applyStep()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<a id="aeb63064bffd6c4f4ff157a45535bb142" name="aeb63064bffd6c4f4ff157a45535bb142"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb63064bffd6c4f4ff157a45535bb142">&#9670;&#160;</a></span>boxMin()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::boxMin </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00330">330</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">shark::SvmProblem&lt; Problem &gt;::alpha()</a>, <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02a58dcbef75d88f882ee2072dbc57c6fad">shark::AlphaDeactivated</a>, <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>, and <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">shark::SvmProblem&lt; Problem &gt;::applyStep()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<a id="a33eaf27af1bb982dcd7f965fcfbce884" name="a33eaf27af1bb982dcd7f965fcfbce884"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a33eaf27af1bb982dcd7f965fcfbce884">&#9670;&#160;</a></span>checkKKT()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::checkKKT </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00541">541</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a1e36b705c5de7db9cc1a9882753d8102">shark::SvmProblem&lt; Problem &gt;::active()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ae638f4ac4dba40b797e5f6cfd2244c77">shark::SvmProblem&lt; Problem &gt;::gradient()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a39babf310726215d71ef6e29235342c9">shark::SvmProblem&lt; Problem &gt;::isLowerBound()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ab02d8e8ba4ed8d48ba32fed34c6a1247">shark::SvmProblem&lt; Problem &gt;::isUpperBound()</a>.</p>

</div>
</div>
<a id="a218c29273fd1258c287357a1b0493918" name="a218c29273fd1258c287357a1b0493918"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a218c29273fd1258c287357a1b0493918">&#9670;&#160;</a></span>deactivateVariable()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::deactivateVariable </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Remove the i-th example from the problem while taking the equality constraint into account. </p>
<p>The i-th element is first set to zero and as well as an unspecified set corrected so that the constraint is fulfilled. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00490">490</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">shark::SvmProblem&lt; Problem &gt;::alpha()</a>, <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02a58dcbef75d88f882ee2072dbc57c6fad">shark::AlphaDeactivated</a>, <a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">shark::SvmProblem&lt; Problem &gt;::applyStep()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>, and <a class="el" href="_exception_8h.html#a42a6a50e4d06c00d60fbca5333f40768">SIZE_CHECK</a>.</p>

</div>
</div>
<a id="aa8f67d9116f73ddd35faf9f16d13e39f" name="aa8f67d9116f73ddd35faf9f16d13e39f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa8f67d9116f73ddd35faf9f16d13e39f">&#9670;&#160;</a></span>diagonal()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::diagonal </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00356">356</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<a id="a42f4bb52a5e7c0415519da0ecf060edf" name="a42f4bb52a5e7c0415519da0ecf060edf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42f4bb52a5e7c0415519da0ecf060edf">&#9670;&#160;</a></span>dimensions()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::size_t <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::dimensions </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00322">322</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a0c80f38017ca75c1b2a6bc3654e0b627">shark::SvmProblem&lt; Problem &gt;::activateVariable()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a218c29273fd1258c287357a1b0493918">shark::SvmProblem&lt; Problem &gt;::deactivateVariable()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a2906035d35c845bde74e931a3b7b57d0">shark::SvmProblem&lt; Problem &gt;::flipCoordinates()</a>, <a class="el" href="classshark_1_1_svm_problem.html#acb8152953435a41f851793490341d4c3">shark::SvmProblem&lt; Problem &gt;::getUnpermutedAlpha()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a0390d19fab99eb4c47afd40ce22deb81">shark::SvmProblem&lt; Problem &gt;::scaleBoxConstraints()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a21e030b9a4e898dd8ca16f555cad4447">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ad10f8907862c01b1fc4ec5cd0ff06823">shark::SvmProblem&lt; Problem &gt;::SvmProblem()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>.</p>

</div>
</div>
<a id="a2906035d35c845bde74e931a3b7b57d0" name="a2906035d35c845bde74e931a3b7b57d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2906035d35c845bde74e931a3b7b57d0">&#9670;&#160;</a></span>flipCoordinates()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::flipCoordinates </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>j</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>exchange two variables via the permutation </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00510">510</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>, <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>, <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>, and <a class="el" href="_exception_8h.html#a42a6a50e4d06c00d60fbca5333f40768">SIZE_CHECK</a>.</p>

</div>
</div>
<a id="aff44e8756f1ce22489ff00bdb25cb95d" name="aff44e8756f1ce22489ff00bdb25cb95d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aff44e8756f1ce22489ff00bdb25cb95d">&#9670;&#160;</a></span>functionValue()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::functionValue </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Returns the current function value of the problem. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00436">436</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>, and <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

</div>
</div>
<a id="acb8152953435a41f851793490341d4c3" name="acb8152953435a41f851793490341d4c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb8152953435a41f851793490341d4c3">&#9670;&#160;</a></span>getUnpermutedAlpha()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">RealVector <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::getUnpermutedAlpha </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00368">368</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">shark::SvmProblem&lt; Problem &gt;::alpha()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

</div>
</div>
<a id="ae638f4ac4dba40b797e5f6cfd2244c77" name="ae638f4ac4dba40b797e5f6cfd2244c77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae638f4ac4dba40b797e5f6cfd2244c77">&#9670;&#160;</a></span>gradient()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::gradient </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00360">360</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a33eaf27af1bb982dcd7f965fcfbce884">shark::SvmProblem&lt; Problem &gt;::checkKKT()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a21e030b9a4e898dd8ca16f555cad4447">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#abb9d0ed983afddf9bcc3b856c8b04b02">shark::SvmProblem&lt; Problem &gt;::testShrinkVariable()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<a id="a39babf310726215d71ef6e29235342c9" name="a39babf310726215d71ef6e29235342c9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39babf310726215d71ef6e29235342c9">&#9670;&#160;</a></span>isLowerBound()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::isLowerBound </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00336">336</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02aba725b5f89015335eeea5ee054dae747">shark::AlphaLowerBound</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a33eaf27af1bb982dcd7f965fcfbce884">shark::SvmProblem&lt; Problem &gt;::checkKKT()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#abb9d0ed983afddf9bcc3b856c8b04b02">shark::SvmProblem&lt; Problem &gt;::testShrinkVariable()</a>.</p>

</div>
</div>
<a id="ab02d8e8ba4ed8d48ba32fed34c6a1247" name="ab02d8e8ba4ed8d48ba32fed34c6a1247"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab02d8e8ba4ed8d48ba32fed34c6a1247">&#9670;&#160;</a></span>isUpperBound()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::isUpperBound </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00339">339</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02ab7f64265c75300658e04dfbc2ae28db5">shark::AlphaUpperBound</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a33eaf27af1bb982dcd7f965fcfbce884">shark::SvmProblem&lt; Problem &gt;::checkKKT()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#abb9d0ed983afddf9bcc3b856c8b04b02">shark::SvmProblem&lt; Problem &gt;::testShrinkVariable()</a>.</p>

</div>
</div>
<a id="afe5c70e6047a13481b3f3dbfbd3b7b4e" name="afe5c70e6047a13481b3f3dbfbd3b7b4e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afe5c70e6047a13481b3f3dbfbd3b7b4e">&#9670;&#160;</a></span>linear()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::linear </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00348">348</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a0390d19fab99eb4c47afd40ce22deb81">shark::SvmProblem&lt; Problem &gt;::scaleBoxConstraints()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a9b1278df58fcf906b5395793f5bf1b33">shark::SvmProblem&lt; Problem &gt;::setLinear()</a>.</p>

</div>
</div>
<a id="aac1b3e0a3248593ed5b917940ea8625f" name="aac1b3e0a3248593ed5b917940ea8625f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac1b3e0a3248593ed5b917940ea8625f">&#9670;&#160;</a></span>permutation()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::size_t <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::permutation </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00364">364</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>.</p>

</div>
</div>
<a id="ac12ebec3daaab85111af6dd0561e993e" name="ac12ebec3daaab85111af6dd0561e993e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac12ebec3daaab85111af6dd0561e993e">&#9670;&#160;</a></span>quadratic()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classshark_1_1_svm_problem.html#a4e039c8a44164e2f96137119779ef344">MatrixType</a> &amp; <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::quadratic </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>representation of the quadratic part of the objective function </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00344">344</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">shark::SvmProblem&lt; Problem &gt;::applyStep()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ad10f8907862c01b1fc4ec5cd0ff06823">shark::SvmProblem&lt; Problem &gt;::SvmProblem()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<a id="a073a4ac3cd7dddbd840fe8b38ca2b399" name="a073a4ac3cd7dddbd840fe8b38ca2b399"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a073a4ac3cd7dddbd840fe8b38ca2b399">&#9670;&#160;</a></span>reshrink()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::reshrink </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00441">441</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

</div>
</div>
<a id="a0390d19fab99eb4c47afd40ce22deb81" name="a0390d19fab99eb4c47afd40ce22deb81"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0390d19fab99eb4c47afd40ce22deb81">&#9670;&#160;</a></span>scaleBoxConstraints()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::scaleBoxConstraints </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>factor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>variableScalingFactor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Scales all box constraints by a constant factor and adapts the solution using a separate scaling. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00522">522</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02a58dcbef75d88f882ee2072dbc57c6fad">shark::AlphaDeactivated</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#afe5c70e6047a13481b3f3dbfbd3b7b4e">shark::SvmProblem&lt; Problem &gt;::linear()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>, <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>, <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>.</p>

</div>
</div>
<a id="a21e030b9a4e898dd8ca16f555cad4447" name="a21e030b9a4e898dd8ca16f555cad4447"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a21e030b9a4e898dd8ca16f555cad4447">&#9670;&#160;</a></span>setInitialSolution() <span class="overload">[1/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::setInitialSolution </td>
          <td>(</td>
          <td class="paramtype">RealVector const &amp;&#160;</td>
          <td class="paramname"><em>alpha</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Define the initial solution for the iterative solver. </p>
<p>This method can be used to warm-start the solver. It requires a feasible solution (alpha), for which it computes the gradient of the dual objective function. Note that this is a quadratic time operation in the number of non-zero coefficients. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00470">470</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">shark::SvmProblem&lt; Problem &gt;::alpha()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ae638f4ac4dba40b797e5f6cfd2244c77">shark::SvmProblem&lt; Problem &gt;::gradient()</a>, <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, and <a class="el" href="_exception_8h.html#a42a6a50e4d06c00d60fbca5333f40768">SIZE_CHECK</a>.</p>

</div>
</div>
<a id="aa19eecb264f01e1e3f8aa07640004d7b" name="aa19eecb264f01e1e3f8aa07640004d7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa19eecb264f01e1e3f8aa07640004d7b">&#9670;&#160;</a></span>setInitialSolution() <span class="overload">[2/2]</span></h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::setInitialSolution </td>
          <td>(</td>
          <td class="paramtype">RealVector const &amp;&#160;</td>
          <td class="paramname"><em>alpha</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">RealVector const &amp;&#160;</td>
          <td class="paramname"><em>gradient</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Define the initial solution for the iterative solver. </p>
<p>This method can be used to warm-start the solver. It requires a feasible solution (alpha) and the corresponding gradient of the dual objective function. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00449">449</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">shark::SvmProblem&lt; Problem &gt;::alpha()</a>, <a class="el" href="classshark_1_1_svm_problem.html#afc78269e1b3b3f0372018eb3172db25e">shark::SvmProblem&lt; Problem &gt;::boxMax()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aeb63064bffd6c4f4ff157a45535bb142">shark::SvmProblem&lt; Problem &gt;::boxMin()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ae638f4ac4dba40b797e5f6cfd2244c77">shark::SvmProblem&lt; Problem &gt;::gradient()</a>, <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>, <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>, <a class="el" href="classshark_1_1_svm_problem.html#aac1b3e0a3248593ed5b917940ea8625f">shark::SvmProblem&lt; Problem &gt;::permutation()</a>, <a class="el" href="_exception_8h.html#a73abb5049a0168d72a48e72dda41708b">SHARK_ASSERT</a>, <a class="el" href="_exception_8h.html#a42a6a50e4d06c00d60fbca5333f40768">SIZE_CHECK</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a21e030b9a4e898dd8ca16f555cad4447">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>.</p>

</div>
</div>
<a id="a9b1278df58fcf906b5395793f5bf1b33" name="a9b1278df58fcf906b5395793f5bf1b33"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b1278df58fcf906b5395793f5bf1b33">&#9670;&#160;</a></span>setLinear()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::setLinear </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>newValue</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>adapts the linear part of the problem and updates the internal data structures accordingly. </p>

<p>Reimplemented in <a class="el" href="structshark_1_1_box_based_shrinking_strategy.html#ab68691e44171a2cc4659c19c9a0125d6">shark::BoxBasedShrinkingStrategy&lt; SvmProblem&lt; Problem &gt; &gt;</a>.</p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00535">535</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#afe5c70e6047a13481b3f3dbfbd3b7b4e">shark::SvmProblem&lt; Problem &gt;::linear()</a>, <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>, and <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>.</p>

</div>
</div>
<a id="aa98f2e4bcbd2311dd36f1c28ade75bd2" name="aa98f2e4bcbd2311dd36f1c28ade75bd2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa98f2e4bcbd2311dd36f1c28ade75bd2">&#9670;&#160;</a></span>shrink()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::shrink </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00440">440</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

</div>
</div>
<a id="abb9d0ed983afddf9bcc3b856c8b04b02" name="abb9d0ed983afddf9bcc3b856c8b04b02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb9d0ed983afddf9bcc3b856c8b04b02">&#9670;&#160;</a></span>testShrinkVariable()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::testShrinkVariable </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>a</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>largestUp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>smallestDown</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00632">632</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#ae638f4ac4dba40b797e5f6cfd2244c77">shark::SvmProblem&lt; Problem &gt;::gradient()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a39babf310726215d71ef6e29235342c9">shark::SvmProblem&lt; Problem &gt;::isLowerBound()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ab02d8e8ba4ed8d48ba32fed34c6a1247">shark::SvmProblem&lt; Problem &gt;::isUpperBound()</a>.</p>

</div>
</div>
<a id="ad1472ef03326d4e0d8a98f4a3d7e159a" name="ad1472ef03326d4e0d8a98f4a3d7e159a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1472ef03326d4e0d8a98f4a3d7e159a">&#9670;&#160;</a></span>unshrink()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::unshrink </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00442">442</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

</div>
</div>
<a id="ade0b5d8577fdb5fde149f542babc1369" name="ade0b5d8577fdb5fde149f542babc1369"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ade0b5d8577fdb5fde149f542babc1369">&#9670;&#160;</a></span>updateAlphaStatus()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::updateAlphaStatus </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00623">623</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02a28e0b952dcae83b045ba488526875f3c">shark::AlphaFree</a>, <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02aba725b5f89015335eeea5ee054dae747">shark::AlphaLowerBound</a>, <a class="el" href="namespaceshark.html#a51a13ac7e3cbd1f789124f6f132e5d02ab7f64265c75300658e04dfbc2ae28db5">shark::AlphaUpperBound</a>, <a class="el" href="classshark_1_1_svm_problem.html#afc78269e1b3b3f0372018eb3172db25e">shark::SvmProblem&lt; Problem &gt;::boxMax()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aeb63064bffd6c4f4ff157a45535bb142">shark::SvmProblem&lt; Problem &gt;::boxMin()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a37d6169989efa917c76435eb50167a7b">shark::SvmProblem&lt; Problem &gt;::m_alphaStatus</a>, <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>, and <a class="el" href="_exception_8h.html#a42a6a50e4d06c00d60fbca5333f40768">SIZE_CHECK</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a0c80f38017ca75c1b2a6bc3654e0b627">shark::SvmProblem&lt; Problem &gt;::activateVariable()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">shark::SvmProblem&lt; Problem &gt;::applyStep()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a0390d19fab99eb4c47afd40ce22deb81">shark::SvmProblem&lt; Problem &gt;::scaleBoxConstraints()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ad10f8907862c01b1fc4ec5cd0ff06823">shark::SvmProblem&lt; Problem &gt;::SvmProblem()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<a id="a31367cdd5b8129925a6c0e70515b4e0d" name="a31367cdd5b8129925a6c0e70515b4e0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31367cdd5b8129925a6c0e70515b4e0d">&#9670;&#160;</a></span>updateSMO()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::updateSMO </td>
          <td>(</td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname"><em>j</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Does an update of SMO given a working set with indices i and j. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00376">376</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">References <a class="el" href="classshark_1_1_svm_problem.html#a1e36b705c5de7db9cc1a9882753d8102">shark::SvmProblem&lt; Problem &gt;::active()</a>, <a class="el" href="classshark_1_1_svm_problem.html#afc78269e1b3b3f0372018eb3172db25e">shark::SvmProblem&lt; Problem &gt;::boxMax()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aeb63064bffd6c4f4ff157a45535bb142">shark::SvmProblem&lt; Problem &gt;::boxMin()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa8f67d9116f73ddd35faf9f16d13e39f">shark::SvmProblem&lt; Problem &gt;::diagonal()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ae638f4ac4dba40b797e5f6cfd2244c77">shark::SvmProblem&lt; Problem &gt;::gradient()</a>, <a class="el" href="classshark_1_1_svm_problem.html#abe3da8520eacc5b4c5c5f1b051ad726c">shark::SvmProblem&lt; Problem &gt;::m_gradient</a>, <a class="el" href="classshark_1_1_svm_problem.html#adb2ad6ad0ad2571b0985f767347223d3">shark::SvmProblem&lt; Problem &gt;::m_problem</a>, <a class="el" href="classshark_1_1_svm_problem.html#ac12ebec3daaab85111af6dd0561e993e">shark::SvmProblem&lt; Problem &gt;::quadratic()</a>, <a class="el" href="_exception_8h.html#a42a6a50e4d06c00d60fbca5333f40768">SIZE_CHECK</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a53377e65ea2637c37acb3f7523a837fc" name="a53377e65ea2637c37acb3f7523a837fc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a53377e65ea2637c37acb3f7523a837fc">&#9670;&#160;</a></span>m_active</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::size_t <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::m_active</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00559">559</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a1e36b705c5de7db9cc1a9882753d8102">shark::SvmProblem&lt; Problem &gt;::active()</a>.</p>

</div>
</div>
<a id="a37d6169989efa917c76435eb50167a7b" name="a37d6169989efa917c76435eb50167a7b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37d6169989efa917c76435eb50167a7b">&#9670;&#160;</a></span>m_alphaStatus</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;char&gt; <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::m_alphaStatus</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Stores the status, whther alpha is on the lower or upper bound, or whether it is free. </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00562">562</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a0c80f38017ca75c1b2a6bc3654e0b627">shark::SvmProblem&lt; Problem &gt;::activateVariable()</a>, <a class="el" href="classshark_1_1_svm_problem.html#afc78269e1b3b3f0372018eb3172db25e">shark::SvmProblem&lt; Problem &gt;::boxMax()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aeb63064bffd6c4f4ff157a45535bb142">shark::SvmProblem&lt; Problem &gt;::boxMin()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a218c29273fd1258c287357a1b0493918">shark::SvmProblem&lt; Problem &gt;::deactivateVariable()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a2906035d35c845bde74e931a3b7b57d0">shark::SvmProblem&lt; Problem &gt;::flipCoordinates()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a39babf310726215d71ef6e29235342c9">shark::SvmProblem&lt; Problem &gt;::isLowerBound()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ab02d8e8ba4ed8d48ba32fed34c6a1247">shark::SvmProblem&lt; Problem &gt;::isUpperBound()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a0390d19fab99eb4c47afd40ce22deb81">shark::SvmProblem&lt; Problem &gt;::scaleBoxConstraints()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>.</p>

</div>
</div>
<a id="abe3da8520eacc5b4c5c5f1b051ad726c" name="abe3da8520eacc5b4c5c5f1b051ad726c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abe3da8520eacc5b4c5c5f1b051ad726c">&#9670;&#160;</a></span>m_gradient</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">RealVector <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::m_gradient</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>gradient of the objective function at the current alpha </p>

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00557">557</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">shark::SvmProblem&lt; Problem &gt;::applyStep()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a2906035d35c845bde74e931a3b7b57d0">shark::SvmProblem&lt; Problem &gt;::flipCoordinates()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aff44e8756f1ce22489ff00bdb25cb95d">shark::SvmProblem&lt; Problem &gt;::functionValue()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ae638f4ac4dba40b797e5f6cfd2244c77">shark::SvmProblem&lt; Problem &gt;::gradient()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a0390d19fab99eb4c47afd40ce22deb81">shark::SvmProblem&lt; Problem &gt;::scaleBoxConstraints()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a9b1278df58fcf906b5395793f5bf1b33">shark::SvmProblem&lt; Problem &gt;::setLinear()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ad10f8907862c01b1fc4ec5cd0ff06823">shark::SvmProblem&lt; Problem &gt;::SvmProblem()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<a id="adb2ad6ad0ad2571b0985f767347223d3" name="adb2ad6ad0ad2571b0985f767347223d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb2ad6ad0ad2571b0985f767347223d3">&#9670;&#160;</a></span>m_problem</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class Problem &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Problem <a class="el" href="classshark_1_1_svm_problem.html">shark::SvmProblem</a>&lt; Problem &gt;::m_problem</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_svm_problems_8h_source.html#l00554">554</a> of file <a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a>.</p>

<p class="reference">Referenced by <a class="el" href="classshark_1_1_svm_problem.html#a97a8afab15ad38ec1fb321317f9454a1">shark::SvmProblem&lt; Problem &gt;::alpha()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aca60a43765c528fb1e2e5a5acb495de8">shark::SvmProblem&lt; Problem &gt;::applyStep()</a>, <a class="el" href="classshark_1_1_svm_problem.html#afc78269e1b3b3f0372018eb3172db25e">shark::SvmProblem&lt; Problem &gt;::boxMax()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aeb63064bffd6c4f4ff157a45535bb142">shark::SvmProblem&lt; Problem &gt;::boxMin()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa8f67d9116f73ddd35faf9f16d13e39f">shark::SvmProblem&lt; Problem &gt;::diagonal()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a42f4bb52a5e7c0415519da0ecf060edf">shark::SvmProblem&lt; Problem &gt;::dimensions()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a2906035d35c845bde74e931a3b7b57d0">shark::SvmProblem&lt; Problem &gt;::flipCoordinates()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aff44e8756f1ce22489ff00bdb25cb95d">shark::SvmProblem&lt; Problem &gt;::functionValue()</a>, <a class="el" href="classshark_1_1_svm_problem.html#acb8152953435a41f851793490341d4c3">shark::SvmProblem&lt; Problem &gt;::getUnpermutedAlpha()</a>, <a class="el" href="classshark_1_1_svm_problem.html#afe5c70e6047a13481b3f3dbfbd3b7b4e">shark::SvmProblem&lt; Problem &gt;::linear()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aac1b3e0a3248593ed5b917940ea8625f">shark::SvmProblem&lt; Problem &gt;::permutation()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ac12ebec3daaab85111af6dd0561e993e">shark::SvmProblem&lt; Problem &gt;::quadratic()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a0390d19fab99eb4c47afd40ce22deb81">shark::SvmProblem&lt; Problem &gt;::scaleBoxConstraints()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a21e030b9a4e898dd8ca16f555cad4447">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#aa19eecb264f01e1e3f8aa07640004d7b">shark::SvmProblem&lt; Problem &gt;::setInitialSolution()</a>, <a class="el" href="classshark_1_1_svm_problem.html#a9b1278df58fcf906b5395793f5bf1b33">shark::SvmProblem&lt; Problem &gt;::setLinear()</a>, <a class="el" href="classshark_1_1_svm_problem.html#ade0b5d8577fdb5fde149f542babc1369">shark::SvmProblem&lt; Problem &gt;::updateAlphaStatus()</a>, and <a class="el" href="classshark_1_1_svm_problem.html#a31367cdd5b8129925a6c0e70515b4e0d">shark::SvmProblem&lt; Problem &gt;::updateSMO()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/shark/Algorithms/QP/<a class="el" href="_svm_problems_8h_source.html">SvmProblems.h</a></li>
</ul>
</div><!-- contents -->
</div>
</body>
</html>
